Vehicle Sensor Synchronization Using an External Clock Source

ABSTRACT

An example system includes a light detection and ranging (LIDAR) device that scans a field-of-view defined by a pointing direction of the LIDAR device. The system also includes an actuator that adjusts the pointing direction of the LIDAR device. The system also includes a communication interface that receives timing information from an external system. The system also includes a controller that causes the actuator to adjust the pointing direction of the LIDAR device based on at least the received timing information.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.15/644,146, filed Jul. 7, 2017, which is incorporated herein byreference.

BACKGROUND

A vehicle can include one or more sensors that are configured to detectinformation about the environment in which the vehicle operates.

Active sensors, such as light detection and ranging (LIDAR) sensors,radio detection and ranging (RADAR) sensors, sound navigation andranging (SONAR) sensors, among others, are sensors that can scan asurrounding environment by emitting signals toward the surroundingenvironment and detecting reflections of the emitted signals.

For example, a LIDAR sensor can determine distances to environmentalfeatures while scanning through a scene to assemble a “point cloud”indicative of reflective surfaces in the environment. Individual pointsin the point cloud can be determined, for example, by transmitting alaser pulse and detecting a returning pulse, if any, reflected from anobject in the environment, and then determining a distance to the objectaccording to a time delay between the transmission of the pulse and thereception of the reflected pulse. As a result, for example, athree-dimensional map of points indicative of locations of reflectivefeatures in the environment can be generated.

SUMMARY

In one example, a system includes a light detection and ranging (LIDAR)device that scans a field-of-view defined by a pointing direction of theLIDAR device. The system also includes an actuator that adjusts thepointing direction of the LIDAR device. The system also includes acommunication interface that receives timing information from anexternal system. The system also includes a controller that causes theactuator to adjust the pointing direction of the LIDAR device based onat least the received timing information.

In another example, a vehicle includes a light detection and ranging(LIDAR) device that scans a field-of-view defined by a pointingdirection of the LIDAR device. The vehicle also includes an actuatorthat rotates the LIDAR device about an axis to adjust the pointingdirection of the LIDAR device. The vehicle also includes a communicationinterface that receives timing information from an external system. Thevehicle also includes a controller that causes the actuator to adjustone or more characteristics of the rotation of the LIDAR device based onat least the received timing information.

In yet another example, a method involves scanning a field-of-viewdefined by a pointing direction of a LIDAR device. The method alsoinvolves receiving timing information from an external system. Themethod also involves adjusting the pointing direction of the LIDARdevice based on at least the received timing information.

In still another example, a system comprises means for scanning afield-of-view defined by a pointing direction of a light detection andranging (LIDAR) device. The system further comprises means for receivingtiming information from an external system. The system further comprisesmeans for adjusting the pointing direction of the LIDAR device based onat least the received timing information.

These as well as other aspects, advantages, and alternatives will becomeapparent to those of ordinary skill in the art by reading the followingdetailed description with reference where appropriate to theaccompanying drawings. Further, it should be understood that thedescription provided in this summary section and elsewhere in thisdocument is intended to illustrate the claimed subject matter by way ofexample and not by way of limitation.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a simplified block diagram of a device, according to anexample embodiment.

FIG. 2 illustrates a LIDAR device, according to an example embodiment.

FIG. 3 is a simplified block diagram of a vehicle, according to anexample embodiment.

FIG. 4A illustrates several views of a vehicle equipped with a LIDARdevice, according to an example embodiment.

FIG. 4B illustrates a top view of the vehicle.

FIG. 4C illustrates an example operation of the LIDAR device.

FIG. 4D illustrates another example operation of the LIDAR device.

FIG. 5 illustrates a scenario where multiple vehicles are operating inan environment, according to an example embodiment.

FIG. 6 illustrates another scenario where multiple vehicles areoperating in an environment, according to an example embodiment.

FIG. 7 is a simplified block diagram of a system, according to anexample embodiment.

FIG. 8 is a flowchart of a method, according to an example embodiment.

DETAILED DESCRIPTION

Exemplary implementations are described herein. It should be understoodthat the word “exemplary” is used herein to mean “serving as an example,instance, or illustration.” Any implementation or feature describedherein as “exemplary” or “illustrative” is not necessarily to beconstrued as preferred or advantageous over other implementations orfeatures. In the figures, similar symbols typically identify similarcomponents, unless context dictates otherwise. The exampleimplementations described herein are not meant to be limiting. It willbe readily understood that the aspects of the present disclosure, asgenerally described herein, and illustrated in the figures, can bearranged, substituted, combined, separated, and designed in a widevariety of different configurations.

I. OVERVIEW

There are continued efforts to improve vehicle safety and/or autonomousoperation, including the development of vehicles equipped withaccident-avoidance systems and remote sensing capabilities. To that end,various types of active sensors, such as LIDARs, RADARs, SONARs, etc.,may be included in a vehicle to detect obstacles or objects in anenvironment of the vehicle and thereby facilitate accident avoidanceand/or autonomous operation, among other possibilities.

As sensor-equipped vehicles become more prevalent, various operationalscenarios may affect operation of the respective sensors. In one examplescenario, multiple LIDAR-equipped vehicles may be proximally locatedwith respect to one another. In this scenario, light pulses emitted by aLIDAR of a first vehicle may be received by a LIDAR of a second vehicle.Further, in this scenario, the second vehicle may interpret the lightpulse emitted by the LIDAR of the first vehicle as a reflection ofanother light pulse emitted by the LIDAR of the second vehicle. Thus,such interference between vehicle-mounted LIDARs may affect thereliability and/or quality of the scans performed using the respectiveLIDARs.

To reduce such interference, some example implementations herein providefor synchronization of various sensor and vehicle operations. Oneexample implementation involves a vehicle that includes a LIDAR deviceand a communication interface (e.g., wireless communication system,sensor antennas, etc.). The communication interface may receive timinginformation from an external clock source. For example, the timinginformation may include a global positioning system (GPS) clock signal,a network time protocol (NTP) reference clock signal, or a time signalfrom a cellular communication network, among other possibilities. Thevehicle may also include a controller that operates an actuator toadjust a pointing direction of the LIDAR device based on at least thetiming information received from the external clock source. Further, theexternal clock source can be employed as a common reference clock signalthat is used by multiple LIDAR-equipped vehicles.

With this arrangement, for instance, multiple LIDAR-equipped vehicleslocated in a given area can rely on the common clock signal to aligntheir respective LIDAR pointing directions in a similar direction at anygiven time. For example, vehicle-mounted rotating LIDARs can use thecommon clock signal as a timing signal to establish a common frequencyand phase of the rotation of the respective LIDARs relative to theenvironment. In an example scenario, at time t=0 seconds, multiplevehicle LIDARs can be pointed toward a first direction (e.g., geographicNorth), and at time t=T/2 (where T is a period of rotation of theLIDARs), the respective LIDARs may be pointed toward a second, oppositedirection (e.g., geographic South). Thus, in this scenario, thelikelihood of interference between the respective vehicle-mounted LIDARscan be reduced.

In some examples, the vehicle may include one or more sensors (e.g.,inertial measurement unit (IMU), gyroscope, accelerometer, compass,etc.) that provide an indication of an orientation of the vehicle in theenvironment. For instance, one example sensor (e.g., yaw sensor) mayindicate a measurement of a yaw direction (e.g., direction of travel ofa car on a road, etc.) of the vehicle. Thus, if two vehicles aretravelling along different yaw directions (e.g., at a streetintersection, opposite lanes of a road, etc.), then the two vehicles canuse their respective yaw direction measurements to adjust theirrespective LIDAR pointing directions toward a similar direction relativeto the environment.

In some examples, the vehicle (or the LIDAR device) may include one ormore sensors (e.g., encoders, IMUs, gyroscopes, accelerometers, etc.)that provide an indication of an orientation of the LIDAR devicerelative to the vehicle. One example sensor (e.g., gyroscope, etc.) mayindicate a measurement of a frequency of rotation of the LIDAR deviceabout an axis. Another example sensor (e.g., encoder, etc.) may indicatea position of the LIDAR device about the axis. By way of example,consider a scenario where the LIDAR device is rotating in a clockwisedirection at a frequency of 15 Hz (15 revolutions per second). In thisscenario, if the vehicle performs a right turn maneuver (e.g., detectedbased on a yaw sensor of the vehicle), the vehicle may reduce thefrequency of rotation of the LIDAR device by an amount similar to therate of change to the yaw direction of the vehicle (e.g., to a frequencyless than 15 Hz). By doing so, for instance, the vehicle can mitigate orprevent variations in the effective frequency of rotation of the LIDARdevice relative to the environment before, during, and/or after theright turn driving maneuver. As a result, for instance, the pointingdirection of the LIDAR device (while the vehicle is performing themaneuver) may continue to be similar to the pointing directions of othervehicle-mounted LIDARs, at least with respect to the environment.Further, for instance, by adjusting the LIDAR spinning rate relative toEarth, the actuator rotating the LIDAR may be associated with a lowercontrol effort (e.g., fewer/lower actuator torque changes) to keep theLIDAR rotating at a target rate. Whereas, if the target LIDAR spinningrate is instead relative to the vehicle for instance, moreaccelerations/decelerations of the LIDAR spinning rate may be associatedwith the actuator in some scenarios where the vehicle is turning. Otheradvantages are possible as well.

Other example vehicle and sensor configurations/operations are possibleas well, in accordance with the present disclosure. For example, anothertype of active sensor can be mounted to the vehicle in addition to orinstead of the LIDAR device. To that end, one or more implementationsherein may involve adjusting a pointing direction of a signal emitted bya vehicle-mounted active sensor (e.g., radio-frequency signal emitted bya RADAR, sound-frequency signal emitted by a SONAR, microwave-frequencysignal emitted by a microwave sensor, infrared-frequency signals emittedby an active IR camera, etc.) according to timing information (e.g.,reference clock signal, etc.) obtained from an external source. Further,for instance, other similar active sensors (which may be mounted to thesame vehicle or to other vehicles) can also use the timing informationfrom the same external clock source to adjust their respective pointingdirections. Thus, in some examples, a likelihood of interference betweenactive sensors (whether or not they are mounted on the same vehicle) canbe reduced, in line with the discussion above.

II. EXAMPLE SENSORS

A non-exhaustive list of example sensors that can be employed hereinincludes LIDAR sensors, RADAR sensors, SONAR sensors, active IR cameras,and microwave cameras, among others. To that end, some example sensorsherein may include an active sensor that emits a signal (e.g., visiblelight signal, invisible light signal, radio-frequency signal, microwavesignal, sound signal, etc.) based on modulated power provided to thesensor, and then detects reflections of the emitted signal from objectsin the surrounding environment.

FIG. 1 is a simplified block diagram of a device 100, according to anexample embodiment. As shown, device 100 includes a power supplyarrangement 102, a controller 104, a transmitter 106, one or moreoptical elements 108, a receiver 114, a rotating platform 116, one ormore actuators 118, a stationary platform 120, a rotary link 122, and ahousing 124. In other embodiments, device 100 may include more, fewer,or different components. For example, device 100 can optionally includeone or more sensors (e.g., gyroscopes, accelerometers, encoders, etc.)that indicate a measurement of an orientation of the device 100.Additionally, the components shown may be combined or divided in anynumber of ways.

Power supply arrangement 102 may be configured to supply, receive,and/or distribute power to various components of device 100. To thatend, power supply arrangement 102 may include or otherwise take the formof a power source (e.g., battery cells, etc.) disposed within device 100and connected to various components of the device 100 in any feasiblemanner, so as to supply power to those components. Additionally oralternatively, power supply arrangement 102 may include or otherwisetake the form of a power adapter configured to receive power from one ormore external power sources (e.g., from a power source arranged in avehicle to which device 100 is mounted) and to transmit the receivedpower to various components of device 100.

Controller 104 may include one or more electronic components and/orsystems arranged to facilitate certain operations of device 100.Controller 104 may be disposed within device 100 in any feasible manner.In one embodiment, controller 104 may be disposed, at least partially,within a central cavity region of rotary link 122.

In some examples, controller 104 may include or otherwise be coupled towiring used for transfer of control signals to various components ofdevice 100 and/or for transfer of data from various components of device100 to controller 104. Generally, the data that controller 104 receivesmay include sensor data based on detections of signals by receiver 114,among other possibilities. Moreover, the control signals sent bycontroller 104 may operate various components of device 100, such as bycontrolling emission of signals by transmitter 106, controllingdetection of signals by the receiver 114, and/or controlling actuator(s)118 to rotate rotating platform 116, among other possibilities.

To that end, in some examples, controller 104 may include one or moreprocessors, data storage, and program instructions (stored on the datastorage) executable by the one or more processors to cause device 100 toperform the various operations described herein. In some instances, thecontroller may communicate with an external controller or the like(e.g., a computing system arranged in a vehicle to which device 100 ismounted) so as to help facilitate transfer of control signals and/ordata between the external controller and the various components ofdevice 100.

Additionally or alternatively, in some examples, controller 104 mayinclude circuitry wired to perform the various functions describedherein. Additionally or alternatively, in some examples, controller 104may include one or more special purpose processors, servos, or othertypes of controllers. For example, controller 104 may include aproportional-integral-derivative (PID) controller or other control loopfeedback mechanism that operates actuator(s) 118 to cause the rotatingplatform to rotate at a particular frequency or phase. Other examplesare possible as well.

Transmitter 106 may be configured to transmit a signal toward anenvironment of device 100.

In a first example, where device 100 is configured as a LIDAR device,transmitter 106 may include one or more light sources that emit one ormore light beams and/or pulses having wavelengths within a wavelengthrange. The wavelength range could, for example, be in the ultraviolet,visible, and/or infrared portions of the electromagnetic spectrum. Insome examples, the wavelength range can be a narrow wavelength range,such as provided by lasers. In some implementations, the one or morelight sources in transmitter 106 may include laser diodes, diode bars,light emitting diodes (LED), vertical cavity surface emitting lasers(VCSEL), organic light emitting diodes (OLED), polymer light emittingdiodes (PLED), light emitting polymers (LEP), liquid crystal displays(LCD), microelectromechanical systems (MEMS), fiber lasers, and/or anyother device configured to selectively transmit, reflect, and/or emitlight to provide a plurality of emitted light beams and/or pulses.

In a second example, where device 100 is configured as an activeinfrared (IR) camera, transmitter 106 may be configured to emit IRradiation to illuminate a scene. To that end, transmitter 106 mayinclude any type of device (e.g., light source, etc.) configured toprovide the IR radiation.

In a third example, where device 100 is configured as a RADAR device,transmitter 106 may include one or more antennas configured to emit amodulated radio-frequency (RF) signal toward an environment of device100.

In a fourth example, where device 100 is configured as a SONAR device,transmitter 106 may include one or more acoustic transducers, such aspiezoelectric transducers, magnetostrictive transducers, electrostatictransducers, etc., configured to emit a modulated sound signal toward anenvironment of device 100. In some implementations, the acoustictransducers can be configured to emit sound signals within a particularwavelength range (e.g., infrasonic, ultrasonic, etc.). Other examplesare possible as well.

Optical element(s) 108 can be optionally included in or otherwisecoupled to transmitter 106 and/or receiver 114. In one example, opticalelement(s) 108 can be arranged to direct light from a light source intransmitter 106 toward the environment. In another example, opticalelement(s) 108 can be arranged to focus light from the environmenttoward receiver 114. As such, optical element(s) may include anyfeasible combination of mirror(s) used to guide propagation of lightthrough physical space and/or lens(es) used to adjust certaincharacteristics of the light, among other optical components.

Receiver 114 may include one or more detectors configured to detectreflections of the signal emitted by transmitter 106.

In a first example, where device 100 is configured as a RADAR device,receiver 114 may include one or more antennas configured to detectreflections of the RF signal transmitted by transmitter 106. To thatend, in some implementations, the one or more antennas of transmitter106 and receiver 114 can be physically implemented as the same physicalantenna structures.

In a second example, where device 100 is configured as a SONAR device,receiver 114 may include one or more sound sensors (e.g., microphones,etc.) that are configured to detect reflections of the sound signalsemitted by transmitter 106.

In a third example, where device 100 is configured as an active IRcamera, receiver 114 may include one or more light detectors (e.g.,charge-coupled devices (CCDs), etc.) that are configured to detect asource wavelength of IR light transmitted by transmitter 106 andreflected off a scene toward receiver 114.

In a fourth example, where device 100 is configured as a LIDAR device,receiver 114 may include one or more light detectors (e.g., photodiodes,avalanche photodiodes, etc.) that are arranged to intercept and detectreflections of the light pulses emitted by transmitter 106 and reflectedfrom one or more objects in a surrounding environment of device 100. Tothat end, receiver 114 may be configured to detect light havingwavelengths in the same wavelength range as the light emitted bytransmitter 106. In this way, for instance, device 100 may distinguishreflected light pulses originated by device 100 from other light in theenvironment.

In some instances, receiver 114 may include a photodetector array, whichmay include one or more detectors each configured to convert detectedlight (e.g., in the above-mentioned wavelength range) into an electricalsignal indicative of the detected light. In practice, such aphotodetector array could be arranged in one of various ways. Forinstance, the detectors can be disposed on one or more substrates (e.g.,printed circuit boards (PCBs), flexible PCBs, etc.) and arranged todetect incoming light that is traveling along the optical path from theoptical lens. Also, such a photodetector array could include anyfeasible number of detectors aligned in any feasible manner.Additionally, the detectors in the array may take various forms. Forinstance, the detectors may take the form of photodiodes, avalanchephotodiodes (e.g., Geiger mode and/or linear mode avalanchephotodiodes), silicon photomultipliers (SiPMs), phototransistors,cameras, active pixel sensors (APS), charge coupled devices (CCD),cryogenic detectors, and/or any other sensor of light configured toreceive focused light having wavelengths in the wavelength range of theemitted light.

In some implementations, device 100 (e.g., in a LIDAR deviceconfiguration) can select or adjust a horizontal scanning resolution bychanging a rate of rotation of device 100 (and/or transmitter 106 andreceiver 114). Additionally or alternatively, for example, thehorizontal scanning resolution can be modified by adjusting a pulse rateof light pulses emitted by transmitter 106. In one particularimplementation, transmitter 106 can be configured to emit light pulsesat a pulse rate of 15,650 light pulses per second. In this example,device 100 may be configured to rotate at 10 Hz (i.e., ten complete 360°rotations per second). As such, receiver 114 can detect light with a0.23° horizontal angular resolution. The horizontal angular resolutionof 0.23° can be adjusted by changing the rate of rotation of device 100or by adjusting the pulse rate. For instance, if device 100 is insteadrotated at 20 Hz, the horizontal angular resolution may become 0.46°.Alternatively, if transmitter 106 emits the light pulses at a rate of31,300 light pulses per second while maintaining the rate of rotation of10 Hz, then the horizontal angular resolution may become 0.115°. Inother examples, device 100 can be alternatively configured to scan aparticular range of views within less than a complete 360° rotation ofdevice 100. Other implementations are possible as well.

Rotating platform 116 may be configured to rotate about an axis. To thatend, rotating platform 116 can be formed from any solid materialsuitable for supporting one or more components mounted thereon. Forexample, transmitter 106 and receiver 114 may be arranged on rotatingplatform 116 such that each of these components moves relative to theenvironment based on rotation of rotating platform 116. In particular,each of these components could be rotated relative to an axis so thatdevice 100 may obtain information from various directions. In thismanner, a pointing direction of device 100 can be adjusted horizontallyby actuating the rotating platform 114 to different directions.

In order to rotate platform 116 in this manner, one or more actuators118 may actuate the rotating platform 114. To that end, actuators 118may include motors, pneumatic actuators, hydraulic pistons, and/orpiezoelectric actuators, among other possibilities.

With this arrangement, controller 104 could operate actuator 118 torotate rotating platform 116 in various ways so as to obtain informationabout the environment. In one example, rotating platform 116 could berotated in either direction. In another example, rotating platform 116may carry out complete revolutions such that device 100 provides a 360°horizontal FOV of the environment. Moreover, rotating platform 116 couldrotate at various frequencies so as to cause device 100 to scan theenvironment at various refresh rates. In one embodiment, device 100 maybe configured to have a refresh rate of 10 Hz (e.g., ten completerotations of device 100 per second).

Alternatively or additionally, device 100 may be configured to adjustthe pointing direction of the emitted signal (emitted by transmitter106) in various ways. In one implementation, signal sources (e.g., lightsources, antennas, acoustic transducers, etc.) of transmitter 106 can beoperated according to a phased array configuration or other type of beamsteering configuration.

In a first example, where device 100 is configured as a LIDAR device,light sources in transmitter 106 can be coupled to phased array opticsthat control the phase of light waves emitted by the light sources. Forinstance, controller 104 can be configured to adjust the phased arrayoptics (e.g., phased array beam steering) to change the effectivepointing direction of a light signal emitted by transmitter 106 (e.g.,even if rotating platform 116 is not rotating).

In a second example, where device 100 is configured as a RADAR device,transmitter 106 may include an array of antennas, and controller 104 canprovide respective phase-shifted control signals for each individualantenna in the array to modify a pointing direction of a combined RFsignal from the array (e.g., phased array beam steering).

In a third example, where device 100 is configured as a SONAR device,transmitter 106 may include an array of acoustic transducers, andcontroller 104 can similarly operate the array of acoustic transducers(e.g., via phase-shifted control signals, phased array beam steering,etc.) to achieve a target pointing direction of a combined sound signalemitted by the array (e.g., even if the rotating platform 116 is notrotating, etc.). Other examples are possible.

Stationary platform 120 may take on any shape or form and may beconfigured for coupling to various structures, such as to a top of avehicle, a robotic platform, a robotic platform, assembly line machine,or any other system that employs device 100 to scan its surroundingenvironment, for example. Also, the coupling of the stationary platformmay be carried out via any feasible connector arrangement (e.g., boltsand/or screws). In this way, device 100 could be coupled to a structureso as to be used for various purposes, such as those described herein.

Rotary link 122 directly or indirectly couples stationary platform 120to rotating platform 116. To that end, rotary link 122 may take on anyshape, form and material that provides for rotation of rotating platform116 about an axis relative to the stationary platform 120. For instance,rotary link 122 may take the form of a shaft or the like that rotatesbased on actuation from actuator 118, thereby transferring mechanicalforces from actuator 118 to rotating platform 116. In oneimplementation, rotary link 122 may have a central cavity in which oneor more components of device 100 may be disposed. In some examples,rotary link 122 may also provide a communication link for transferringdata and/or instructions between stationary platform 120 and rotatingplatform 116 (and/or components thereon such as transmitter 106 andreceiver 114).

Housing 124 may take on any shape, form, and material and may beconfigured to house one or more components of device 100. For example,housing 124 can be a dome-shaped housing. Further, for example, housing124 may be composed of a material that is at least partiallynon-transparent, which may allow for blocking of at least some signalsfrom entering the interior space of the housing 124 and thus helpmitigate thermal and noise effects of ambient signals on one or morecomponents of device 100. Other configurations of housing 124 arepossible as well.

In some examples, housing 124 may be coupled to rotating platform 116such that housing 122 is configured to rotate about the above-mentionedaxis based on rotation of rotating platform 116. With thisimplementation, transmitter 106, receiver 114, and possibly othercomponents of device 100 may each be disposed within housing 124. Inthis manner, transmitter 106 and receiver 114 may rotate along withhousing 124 while being disposed within housing 124. It is noted thatthis arrangement of device 100 is described for exemplary purposes onlyand is not meant to be limiting.

FIG. 2 illustrates a LIDAR device 200, according to an exampleembodiment. In some examples, LIDAR 200 may be similar to device 100.For example, as shown, LIDAR device 200 includes a lens 208, a rotatingplatform 216, a stationary platform 220, and a housing 224 which may besimilar, respectively, to optical element 108, rotating platform 216,stationary platform 120, and housing 124. Additionally, as shown, lightbeams 280 emitted by LIDAR device 200 propagate from lens 108 along apointing direction of LIDAR 200 toward an environment of LIDAR device200, and reflect off one or more objects in the environment as reflectedlight 290.

In some examples, housing 224 can be configured to have a substantiallycylindrical shape and to rotate about an axis of LIDAR device 200. Inone example, housing 224 can have a diameter of approximately 10centimeters. Other examples are possible. In some examples, the axis ofrotation of LIDAR device 200 is substantially vertical. For instance, byrotating housing 224 that includes the various components athree-dimensional map of a 360-degree view of the environment of LIDARdevice 200 can be determined. Additionally or alternatively, in someexamples, LIDAR device 200 can be configured to tilt the axis ofrotation of housing 224 to control a field of view of LIDAR device 200.Thus, in some examples, rotating platform 216 may comprise a movableplatform that may tilt in one or more directions to change the axis ofrotation of LIDAR device 200.

In some examples, lens 208 can have an optical power to both collimatethe emitted light beams 280, and focus the reflected light 290 from oneor more objects in the environment of LIDAR device 200 onto detectors inLIDAR device 200. In one example, lens 208 has a focal length ofapproximately 120 mm. Other example focal lengths are possible. By usingthe same lens 208 to perform both of these functions, instead of atransmit lens for collimating and a receive lens for focusing,advantages with respect to size, cost, and/or complexity can beprovided. Alternatively, LIDAR 200 may include separate transmit andreceive lenses.

III. EXAMPLE VEHICLES

Some example implementations herein involve a sensor, such as devices100 and 200 for instance or another type of sensor (e.g., RADAR, SONAR,camera, another type of active sensor, etc.), mounted to a vehicle.However, an example sensor disclosed herein can also be used for variousother purposes and may be incorporated on or otherwise connected to anyfeasible system or arrangement. For instance, an example LIDAR devicecan be used in an assembly line setting to monitor objects (e.g.,products) being manufactured in the assembly line. Other examples arepossible as well. Additionally, although illustrative embodiments hereininclude a LIDAR device mounted on a car, an example LIDAR device mayadditionally or alternatively be used on any type of vehicle, includingconventional automobiles as well as automobiles having an autonomous orsemi-autonomous mode of operation. Further, the term “vehicle” is to bebroadly construed to cover any moving object, including, for instance, atruck, a van, a semi-trailer truck, a motorcycle, a golf cart, anoff-road vehicle, a warehouse transport vehicle, or a farm vehicle, aswell as a carrier that rides on a track such as a rollercoaster,trolley, tram, or train car, etc.

FIG. 3 is a simplified block diagram of a vehicle 300, according to anexample embodiment. As shown, the vehicle 300 includes a propulsionsystem 302, a sensor system 304, a control system 306, peripherals 308,and a computer system 310. In some embodiments, vehicle 300 may includemore, fewer, or different systems, and each system may include more,fewer, or different components. Additionally, the systems and componentsshown may be combined or divided in any number of ways. For instance,control system 306 and computer system 310 may be combined into a singlesystem.

Propulsion system 302 may be configured to provide powered motion forthe vehicle 300. To that end, as shown, propulsion system 302 includesan engine/motor 318, an energy source 320, a transmission 322, andwheels/tires 324.

The engine/motor 318 may be or include any combination of an internalcombustion engine, an electric motor, a steam engine, and a Sterlingengine. Other motors and engines are possible as well. In someembodiments, propulsion system 302 may include multiple types of enginesand/or motors. For instance, a gas-electric hybrid car may include agasoline engine and an electric motor. Other examples are possible.

Energy source 320 may be a source of energy that powers the engine/motor318 in full or in part. That is, engine/motor 318 may be configured toconvert energy source 320 into mechanical energy. Examples of energysources 320 include gasoline, diesel, propane, other compressedgas-based fuels, ethanol, solar panels, batteries, and other sources ofelectrical power. Energy source(s) 320 may additionally or alternativelyinclude any combination of fuel tanks, batteries, capacitors, and/orflywheels. In some embodiments, energy source 320 may provide energy forother systems of the vehicle 300 as well. To that end, energy source 320may additionally or alternatively include, for example, a rechargeablelithium-ion or lead-acid battery. In some embodiments, energy source 320may include one or more banks of batteries configured to provide theelectrical power to the various components of vehicle 300.

Transmission 322 may be configured to transmit mechanical power from theengine/motor 318 to the wheels/tires 324. To that end, transmission 322may include a gearbox, clutch, differential, drive shafts, and/or otherelements. In embodiments where the transmission 322 includes driveshafts, the drive shafts may include one or more axles that areconfigured to be coupled to the wheels/tires 324.

Wheels/tires 324 of vehicle 300 may be configured in various formats,including a unicycle, bicycle/motorcycle, tricycle, or car/truckfour-wheel format. Other wheel/tire formats are possible as well, suchas those including six or more wheels. In any case, wheels/tires 324 maybe configured to rotate differentially with respect to otherwheels/tires 324. In some embodiments, wheels/tires 324 may include atleast one wheel that is fixedly attached to the transmission 322 and atleast one tire coupled to a rim of the wheel that could make contactwith the driving surface. Wheels/tires 324 may include any combinationof metal and rubber, or combination of other materials. Propulsionsystem 302 may additionally or alternatively include components otherthan those shown.

Sensor system 304 may include a number of sensors configured to senseinformation about an environment in which the vehicle 300 is located, aswell as one or more actuators 336 configured to modify a position and/ororientation of the sensors. As shown, sensor system 304 includes aGlobal Positioning System (GPS) 326, an inertial measurement unit (IMU)328, a RADAR unit 330, a laser rangefinder and/or LIDAR unit 332, and acamera 334. Sensor system 304 may include additional sensors as well,including, for example, sensors that monitor internal systems of thevehicle 300 (e.g., an O₂ monitor, a fuel gauge, an engine oiltemperature, etc.). Other sensors are possible as well.

GPS 326 may be any sensor (e.g., location sensor) configured to estimatea geographic location of vehicle 300. To this end, the GPS 326 mayinclude a transceiver configured to estimate a position of the vehicle300 with respect to the Earth.

IMU 328 may be any combination of sensors configured to sense positionand orientation changes of the vehicle 300 based on inertialacceleration. In some embodiments, the combination of sensors mayinclude, for example, accelerometers, gyroscopes, compasses, etc.

RADAR unit 330 may be any sensor configured to sense objects in theenvironment in which the vehicle 300 is located using radio signals. Insome embodiments, in addition to sensing the objects, RADAR unit 330 mayadditionally be configured to sense the speed and/or heading of theobjects.

Similarly, laser range finder or LIDAR unit 332 may be any sensorconfigured to sense objects in the environment in which vehicle 300 islocated using lasers. For example, LIDAR unit 332 may include one ormore LIDAR devices, at least some of which may take the form of devices100 and/or 200 among other LIDAR device configurations, for instance.

Camera 334 may be any camera (e.g., a still camera, a video camera,etc.) configured to capture images of the environment in which thevehicle 300 is located. To that end, camera 334 may take any of theforms described above.

Control system 306 may be configured to control one or more operationsof vehicle 300 and/or components thereof. To that end, control system306 may include a steering unit 338, a throttle 340, a brake unit 342, asensor fusion algorithm 344, a computer vision system 346, navigation orpathing system 348, and an obstacle avoidance system 350.

Steering unit 338 may be any combination of mechanisms configured toadjust the heading of vehicle 300. Throttle 340 may be any combinationof mechanisms configured to control engine/motor 318 and, in turn, thespeed of vehicle 300. Brake unit 342 may be any combination ofmechanisms configured to decelerate vehicle 300. For example, brake unit342 may use friction to slow wheels/tires 324. As another example, brakeunit 342 may convert kinetic energy of wheels/tires 324 to an electriccurrent.

Sensor fusion algorithm 344 may be an algorithm (or a computer programproduct storing an algorithm) configured to accept data from sensorsystem 304 as an input. The data may include, for example, datarepresenting information sensed by sensor system 304. Sensor fusionalgorithm 344 may include, for example, a Kalman filter, a Bayesiannetwork, a machine learning algorithm, an algorithm for some of thefunctions of the methods herein, or any other sensor fusion algorithm.Sensor fusion algorithm 344 may further be configured to provide variousassessments based on the data from sensor system 304, including, forexample, evaluations of individual objects and/or features in theenvironment in which vehicle 300 is located, evaluations of particularsituations, and/or evaluations of possible impacts based on particularsituations. Other assessments are possible as well.

Computer vision system 346 may be any system configured to process andanalyze images captured by camera 334 in order to identify objectsand/or features in the environment in which vehicle 300 is located,including, for example, traffic signals and obstacles. To that end,computer vision system 346 may use an object recognition algorithm, aStructure from Motion (SFM) algorithm, video tracking, or other computervision techniques. In some embodiments, computer vision system 346 mayadditionally be configured to map the environment, track objects,estimate the speed of objects, etc.

Navigation and pathing system 348 may be any system configured todetermine a driving path for vehicle 300. Navigation and pathing system348 may additionally be configured to update a driving path of vehicle300 dynamically while vehicle 300 is in operation. In some embodiments,navigation and pathing system 348 may be configured to incorporate datafrom sensor fusion algorithm 344, GPS 326, LIDAR unit 332, and/or one ormore predetermined maps so as to determine a driving path for vehicle300.

Obstacle avoidance system 350 may be any system configured to identify,evaluate, and avoid or otherwise negotiate obstacles in the environmentin which vehicle 300 is located. Control system 306 may additionally oralternatively include components other than those shown.

Peripherals 308 may be configured to allow vehicle 300 to interact withexternal sensors, other vehicles, external computing devices, and/or auser. To that end, peripherals 308 may include, for example, a wirelesscommunication system 352, a touchscreen 354, a microphone 356, and/or aspeaker 358.

Wireless communication system 352 may be any system configured towirelessly couple to one or more other vehicles, sensors, or otherentities, either directly or via a communication network. To that end,wireless communication system 352 may include an antenna and a chipsetfor communicating with the other vehicles, sensors, servers, or otherentities either directly or via a communication network. The chipset orwireless communication system 352 in general may be arranged tocommunicate according to one or more types of wireless communication(e.g., protocols) such as Bluetooth, communication protocols describedin IEEE 802.11 (including any IEEE 802.11 revisions), cellulartechnology (such as GSM, CDMA, UMTS, EV-DO, WiMAX, or LTE), Zigbee,dedicated short range communications (DSRC), and radio frequencyidentification (RFID) communications, among other possibilities.

Touchscreen 354 may be used by a user to input commands to vehicle 300.To that end, touchscreen 354 may be configured to sense at least one ofa position and a movement of a user's finger via capacitive sensing,resistance sensing, or a surface acoustic wave process, among otherpossibilities. Touchscreen 354 may be capable of sensing finger movementin a direction parallel or planar to the touchscreen surface, in adirection normal to the touchscreen surface, or both, and may also becapable of sensing a level of pressure applied to the touchscreensurface. Touchscreen 354 may be formed of one or more translucent ortransparent insulating layers and one or more translucent or transparentconducting layers. Touchscreen 354 may take other forms as well.

Microphone 356 may be configured to receive audio (e.g., a voice commandor other audio input) from a user of vehicle 300. Similarly, speakers358 may be configured to output audio to the user.

Computer system 310 may be configured to transmit data to, receive datafrom, interact with, and/or control one or more of propulsion system302, sensor system 304, control system 306, and peripherals 308. To thisend, computer system 310 may be communicatively linked to one or more ofpropulsion system 302, sensor system 304, control system 306, andperipherals 308 by a system bus, network, and/or other connectionmechanism (not shown).

In one example, computer system 310 may be configured to controloperation of transmission 322 to improve fuel efficiency. As anotherexample, computer system 310 may be configured to cause camera 334 tocapture images of the environment. As yet another example, computersystem 310 may be configured to store and execute instructionscorresponding to sensor fusion algorithm 344. As still another example,computer system 310 may be configured to store and execute instructionsfor determining a 3D representation of the environment around vehicle300 using LIDAR unit 332. Thus, for instance, computer system 310 couldfunction as a controller for LIDAR unit 332. Other examples are possibleas well.

As shown, computer system 310 includes processor 312 and data storage314. Processor 312 may comprise one or more general-purpose processorsand/or one or more special-purpose processors. To the extent thatprocessor 312 includes more than one processor, such processors couldwork separately or in combination.

Data storage 314, in turn, may comprise one or more volatile and/or oneor more non-volatile storage components, such as optical, magnetic,and/or organic storage, and data storage 314 may be integrated in wholeor in part with processor 312. In some embodiments, data storage 314 maycontain instructions 316 (e.g., program logic) executable by processor312 to cause vehicle 300 and/or components thereof (e.g., LIDAR unit332, etc.) to perform the various operations described herein. Datastorage 314 may contain additional instructions as well, includinginstructions to transmit data to, receive data from, interact with,and/or control one or more of propulsion system 302, sensor system 304,control system 306, and/or peripherals 308.

In some embodiments, vehicle 300 may include one or more elements inaddition to or instead of those shown. For example, vehicle 300 mayinclude one or more additional interfaces and/or power supplies. Otheradditional components are possible as well. In such embodiments, datastorage 314 may also include instructions executable by processor 312 tocontrol and/or communicate with the additional components. Stillfurther, while each of the components and systems are shown to beintegrated in vehicle 300, in some embodiments, one or more componentsor systems may be removably mounted on or otherwise connected(mechanically or electrically) to vehicle 300 using wired or wirelessconnections. Vehicle 300 may take other forms as well.

FIGS. 4A-4D collectively illustrate a vehicle 400 equipped with a LIDARdevice 410, according to example embodiments. Vehicle 400 may be similarto vehicle 300, for example. Although vehicle 400 is illustrated as acar, as noted above, other types of vehicles are possible. Furthermore,although vehicle 400 may be configured to operate in autonomous mode,the embodiments described herein are also applicable to vehicles thatare not configured to operate autonomously.

FIG. 4A shows a Right Side View, Front View, Back View, and Top View ofvehicle 400. As shown, vehicle 400 includes a LIDAR device 410 mountedon a top side of vehicle 400 opposite a bottom side on which wheels ofvehicle 400, exemplified by wheel 402, are located. LIDAR device 410 maybe similar to devices 100 and/or 200, for example. Although LIDAR device410 is shown and described as being positioned on a top side of vehicle400, LIDAR device 410 could be alternatively positioned on any otherpart of vehicle 400, including any other side of vehicle 400 forinstance.

FIG. 4B illustrates another top view of vehicle 400. In some scenarios,vehicle 400 may rotate about one or more axes, which are shown as yawaxis 414, pitch axis 416, and roll axis 418. Yaw axis 414 may correspondto a height-wise axis extending through the top of the vehicle (and outof the page). In an example scenario, a yaw rotation of vehicle 400about yaw axis 414 may correspond to adjusting a pointing or headingdirection of vehicle 400 (e.g., direction of motion or travel along adriving surface, etc.).

Pitch axis 416 may correspond to a rotational axis that extendswidthwise through the right side and left side of vehicle 400. In anexample scenario, a pitch rotation of vehicle 400 about pitch axis 416may result from an acceleration or deceleration (e.g., application ofbrakes, etc.) of vehicle 400. For instance, a deceleration of thevehicle may cause the vehicle to tilt toward the front side of thevehicle (i.e., pitch rotation about pitch axis 416). In this scenario,front wheel shocks (not shown) of 400 may compress to absorb the forcedue to the change of momentum of the vehicle, and back wheel shocks (notshown) may expand to allow the vehicle to tilt toward the front side. Inanother example scenario, a pitch rotation of vehicle 400 about pitchaxis 416 may result from vehicle 400 traveling along a sloped drivingsurface (e.g., hill, etc.), thereby causing vehicle 400 to tilt upwardsor downwards (i.e., pitch-wise) depending on the slope of the drivingsurface. Other scenarios are possible as well.

Roll axis 418 may correspond to a rotational axis that extendslengthwise through the front side and the back side of vehicle 400. Inan example scenario, a roll rotation of vehicle 400 about roll axis 418may occur in response to the vehicle performing a turning maneuver. Forinstance, if the vehicle performs a sudden right turn maneuver, thevehicle may bank toward the left side (i.e., roll rotation about rollaxis 418) in response to a force caused by the changing momentum of thevehicle or a centripetal force acting on the vehicle due to themaneuver, etc. In another example scenario, a roll rotation of vehicle400 about roll axis 418 may occur as a result of vehicle 400 travelingalong a curved driving surface (e.g., road camber, etc.), which maycause vehicle 400 to tilt sideways (i.e., roll-wise) depending on thecurvature of the driving surface. Other scenarios are possible as well.

It is noted that the positions of the various rotational axes 414, 416,418 may vary depending on various physical characteristics of vehicle400, such as the location of a center of gravity of the vehicle,locations and/or mounting positions of wheels of the vehicle, etc. Tothat end, the various axes 414, 416, 418 are illustrated as shown onlyfor the sake of example. Thus, for instance, roll axis 418 can bealternatively positioned to have a different path through the front sideand back side of vehicle 400, and yaw axis 414 may extend through adifferent region of the top side of vehicle 400 than that shown, etc.

FIG. 4C shows that LIDAR device 410 may be configured to scan anenvironment around vehicle 400 by rotating about vertical axis 432,while emitting one or more light pulses and detecting reflected lightpulses off objects in an environment of vehicle 400, for example.

Thus, as shown, LIDAR device 410 may emit light in a pointing directionof LIDAR 410, which is shown as a pointing direction toward a right sideof the page for example. With this arrangement, LIDAR device 410 canemit light toward regions of the environment that are relatively closeto the vehicle (e.g., a lane marker) as well as toward regions of theenvironment that are further away from the vehicle (e.g., a road signahead of the vehicle). Further, vehicle 400 can rotate LIDAR device 410(or one or more components thereof) about axis 432 to change thepointing direction of LIDAR device 410. In one example, vehicle 400 mayrotate LIDAR device 410 about axis 432 repeatedly for completerotations. In this example, for each complete rotation of LIDAR device410 (or one or more components thereof), LIDAR device 410 can scan a360° FOV around vehicle 400. In another example, vehicle 400 may rotateLIDAR device 410 about axis 432 for less than a complete rotation (e.g.,to scan a limited horizontal FOV rather than a complete 360° FOV).

FIG. 4D is an illustration of vehicle 400 scanning the surroundingenvironment using LIDAR device 410, according to an example embodiment.As shown, each of contours 442, 444, 446, and 448 may correspond torespective FOVs that are scanned when LIDAR device 410 is directed inthe corresponding pointing directions. By way of example, contour 442may correspond to a region of the environment scanned by LIDAR device410 when LIDAR device 410 is in a first pointing direction toward theleft side of the page. For instance, objects inside of contour 442 maybe within a range of distances suitable for proper detection and/oridentification using data from LIDAR device 410 while positioned in thefirst pointing direction. Further, in this example, when LIDAR device410 is rotated to a second pointing direction toward the top of thepage, LIDAR device 410 can then scan the region of the environmentindicated by contour 446. It is noted that these contours are not toscale and not intended to represent actual contours of a LIDAR FOV, butinstead are illustrated as shown for convenience of description.

In some examples, LIDAR device 410 may be configured to rotaterepeatedly about axis 432 at a given frequency (f). For instance, in anexample scenario where f=15 Hz, LIDAR device 410 may have the firstpointing direction (associated with contour 442) fifteen times everysecond, i.e., after every given period (T=1/f) of time from a previoustime when LIDAR device 410 was at the first pointing direction. Thus, inthis scenario, at time t=0, LIDAR device 410 may be at the firstpointing direction associated with contour 442. Further, in thisscenario, at time t=T/4, LIDAR device 410 may be at the second pointingdirection associated with contour 446 (e.g., one quarter of a completerotation about axis 432, etc.).

As a variation of the scenario above, LIDAR device 410 may alternativelybe at a third pointing direction associated with contour 444 at timet=0. In this scenario, at time t=T/4, LIDAR device 410 may thus be at afourth pointing direction associated with contour 448 instead of thesecond pointing direction associated with contour 446. Thus, in thisscenario, the phase of the rotation of LIDAR device 410 about axis 432may differ from the phase of the rotation in the previous scenario. Thedifference between the two phases may be due to various reasons. Forexample, the initial position (e.g., at time t=0) may depend on variousfactors such as when the LIDAR device 410 begins rotating about axis 432(e.g., the time at which vehicle 400 provides power to LIDAR device 410,etc.). Other factors are possible as well.

In some scenarios, as noted above, this variation in phase and/orvariations in the relative direction (e.g., yaw direction, etc.) ofvehicle 400 may cause signals from LIDAR device 410 to interfere withanother LIDAR device mounted to another nearby vehicle.

FIG. 5 illustrates a scenario where multiple vehicles 510, 520, and 530are operating in an environment 500, according to an example embodiment.For example, each of vehicles 510, 520, and 530 may be similar tovehicles 300 and/or 400. Thus, in the scenario, contours 512, 522, 532(e.g., similar to any of contours 442, 444, 446, 448) may correspond torespective FOVs scanned by respective vehicle-mounted sensors (e.g.,RADAR 330, camera 334, LIDAR 410, etc.) of vehicles 510, 520, 530 at aparticular time.

In line with the discussion above, FIG. 5 shows a scenario where theindividual vehicle-mounted sensors of vehicles 510, 520, 530 are notsynchronized with respect to one another. As shown, for instance, FOV512 is associated with a first pointing direction of a sensor (e.g.,LIDAR, RADAR, SONAR, active IR camera, etc.) mounted on vehicle 510, FOV522 is associated with a second pointing direction of a sensor mountedon vehicle 520, and FOV 532 is associated with a third pointingdirection of a sensor mounted on vehicle 530. Further, where thescenario shown relates to spinning LIDARs mounted on the respectivevehicles, the first, second, and third pointing directions of the LIDARSin vehicles 510, 520, 530 (at the particular time of the scenario shown)have different rotation phases with respect to environment 500.

Further, in the scenario shown in FIG. 5, the FOVs 512 and 532 mayoverlap with one another. This overlap may result in interferencebetween the sensor (e.g., LIDAR, etc.) mounted on vehicle 510 and thesensor mounted on vehicle 530. By way of example, a LIDAR of vehicle 510may detect light signals emitted from a LIDAR of vehicle 530 (i.e.,light signals within contour 532) in addition to or instead ofreflections of light signals emitted by the LIDAR of vehicle 510 (i.e.,light signals within contour 512). Similarly, the LIDAR of vehicle 530may detect light signals emitted from the LIDAR of vehicle 510 (i.e.,light signals within contour 512) in addition to or instead ofreflections of light signals emitted by the LIDAR of vehicle 530 (i.e.,light signals within contour 532). In this way, the LIDARs mounted onvehicles 510 and 530 may interfere with each other. As another example,an active IR camera of vehicle 510 may emit IR radiation (within contour532) that is detected by an active IR camera of vehicle 530 instead ofor in addition to reflections of IR radiation emitted by the active IRcamera of vehicle 530. Similarly, in this example, the active cameras ofvehicles 510 and 530 may interfere with one another.

Further, although contours 512 and 522 are not shown as overlapping inFIG. 5, in this scenario, the contours 512 and 522 may overlap afterpassage of time. For example, if the sensors mounted on vehicles 510 and520 rotate (e.g., spin) in opposite directions, then contours 512 and522 may eventually overlap, thereby causing interference between thesensors of vehicles 510 and 520.

Accordingly, within examples, pointing directions of proximally locatedvehicle-mounted sensors relative to an environment can be synchronizedto mitigate or reduce a likelihood of such interference.

IV. EXAMPLE SENSOR SYNCHRONIZATION

FIG. 6 illustrates a scenario where multiple vehicles 610, 620, 630operating within an environment 600 mount sensors that are synchronized,according to an example embodiment. For example, environment 600,vehicles 610, 620, 630, and contours 612, 622, 632 may be similar,respectively, to environment 500, vehicles 510, 520, 530, and contours512, 522, 532.

However, unlike the scenario shown in FIG. 5, the sensor pointingdirections associated with FOVs 612, 622, 632 are synchronized tocorrespond to a substantially similar direction relative to environment600 (at the particular time associated with the scenario of FIG. 6).

In this scenario, for instance, contours 612 and 632 may be associatedwith substantially similar LIDAR pointing directions relative toenvironment 600. As a result, although contour 612 overlaps vehicle 630,the LIDAR of vehicle 610 may be less likely to interfere with the LIDARof vehicle 630. For instance, interference may be more likely to occurwhen two vehicle-mounted LIDARs are pointing toward one another than ifthe two LIDARs are pointing in the same directions (or differentdirections as long as at least one of the two LIDARs is pointing awayfrom the other LIDAR). Referring back to FIG. 2 for example, a lens(e.g., lens 108) of the LIDAR of vehicle 610 may be pointing in a samedirection as a lens of the LIDAR of vehicle 630. In this example, lightsignals from the LIDAR of vehicle 610 (indicated by contour 612) maypropagate toward a back-side of a housing (e.g., housing 224) of theLIDAR of vehicle 630 (e.g., opposite to a front-side where the lens ofthe LIDAR of vehicle 630 is located). Thus, in this example, the housingof the LIDAR of vehicle 630 may prevent the light signals from the LIDARof vehicle 610 from reaching a receiver of the LIDAR of vehicle 630.

Further, the rotation directions of the respective sensors in vehicles610, 620, 630 can be synchronized to prevent such interference afterpassage of time. For instance, the sensors of vehicles 610, 620, 630 canbe configured to rotate about respective axes in a same direction (e.g.,clockwise or counterclockwise) relative to environment 600.

FIG. 7 is a simplified block diagram of a system 700 for synchronizingvehicle-mounted sensors, according to an example embodiment. System 700illustrates an example system that facilitates the sensorsynchronization operations described above for FIG. 6. As shown, system700 includes vehicles 702, 704, 706 which may be similar to any of thevehicles 300, 400, 510, 520, 530, 610, 620, 630, for example. Further,as shown, system 700 includes external clock source(s)/system(s) 730.

As shown, vehicle 702 includes a LIDAR device 710, one or more actuators712, one or more LIDAR rotation indicators 714, one or more vehicleorientation sensors 716, a communication interface 718, and a controller720.

LIDAR device 710 may be similar to any of the devices 100, 200, 332,410, or any other device (e.g., active sensor, etc.) that emits a signaland detects reflections of the emitted signal to scan a field-of-view(FOV) defined by a pointing direction of the device. Thus, although notshown, vehicles 702, 704, and/or 706 may include other types of sensorsin addition to or instead of LIDAR device 710. For example, vehicle 702may include a RADAR sensor (e.g., RADAR unit 330), a SONAR sensor, anactive camera sensor (e.g., a sensor that emits IR or other signalhaving a source wavelength to illuminate a scene, and detectsreflections of the emitted signal to scan the scene, etc.), or any othersensor that scans a FOV. Further, LIDAR device 710 can be mounted to anyside of vehicle 702 (e.g., top, right, left, back, etc.).

Actuator(s) 712 may comprise one or more actuators similar toactuator(s) 336. In one implementation, actuator 712 may be configuredto rotate LIDAR device 710 (or a rotating platform thereof such asrotating platforms 116, 226) about an axis (e.g., axis 432, etc.).Further, in some implementations, actuator 712 can rotate LIDAR device710 complete rotations about the axis, or partial rotations about theaxis.

LIDAR rotation indicator(s) 714 may comprise any combination of devicesthat provide an indication of the pointing direction of the LIDAR device710 (or any other active sensor) relative to the vehicle 702. In oneexample, indicators 714 may comprise an encoder (e.g., mechanicalencoder, optical encoder, magnetic encoder, capacitive encoder, etc.)that measures a position of the LIDAR device 710 about an axis thereof(e.g., axis 432, etc.). For instance, where LIDAR 710 rotates about anaxis, the encoder can provide an encoder value indicating an amount ofrotation of the LIDAR 710 from an initial (or reference) position aboutthe axis. In another example, indicators 714 may comprise a motionsensor (e.g., compass, gyroscope, accelerometer, IMU 328, etc.) thatprovides a measurement of motion of the LIDAR 710 (e.g., rotation, etc.)or other type of sensor.

Thus, in some implementations, indicators 714 may include a LIDARdirection indicator that indicates a measurement of the pointingdirection of LIDAR device 710 relative to vehicle 702 (e.g., absolute orincremental position relative to a reference pointing direction).Further, in some implementations, indicators 714 may include a LIDARrotation indicator that indicates a measurement of a rate of change tothe pointing direction of LIDAR device 710 relative to vehicle 702(e.g., gyroscope, etc.).

Vehicle orientation sensor(s) 716 may comprise any combination ofsensors that provide an indication of an orientation of vehicle 702 inan environment. For example, sensors 716 may include a direction sensor,such as a gyroscope or compass for instance, that is mounted to vehicle702 and aligned with a directional axis of vehicle 702 (e.g., axis 414,416, 418, etc. shown in FIG. 4B). In this example, the direction sensormay provide an indication of a direction of motion of vehicle 702relative to the environment thereof. For instance, a gyroscope sensor716 may provide an output signal that indicates a rate of change in apointing direction of the vehicle (e.g., yaw direction, pitch direction,roll direction, etc.) in the environment in response to motion of thevehicle. Thus, in various examples, sensors 716 may comprise a “yawsensor” (e.g., compass, etc.) that indicates a measurement of a yawdirection of vehicle 702 (e.g., direction relative to a geographicnorth, etc.), and/or a “yaw rate sensor” that indicates a measurement ofa yaw rate of change to a yaw direction of the vehicle in theenvironment. Similarly, sensors 716 may include sensors configured as“pitch sensors,” “pitch rate sensors,” “roll sensors,” and/or “roll ratesensors.”

Communication interface 718 may include any combination of wired and/orwireless communication systems that facilitate communication betweenvehicle 702 and external systems such as vehicles 704, 706, and/or clocksources/systems 730.

In one example, interface 718 may include a wireless communicationsystem similar to wireless communication system 352. In this example,communication interface 718 may include one or more antennas and achipset for communicating with the other vehicles, sensors, servers, orother entities either directly or via a communication network. Thechipset or communication interface 718 in general may be arranged tocommunicate according to one or more types of wireless communication(e.g., protocols) such as Bluetooth, communication protocols describedin IEEE 802.11 (including any IEEE 802.11 revisions), cellulartechnology (such as GSM, CDMA, UMTS, EV-DO, WiMAX, or LTE), Zigbee,dedicated short range communications (DSRC), and radio frequencyidentification (RFID) communications, among other possibilities.

In another example, communication interface 718 may include wired and/orwireless links configured for communication between various componentsof vehicle 702. In this example, communication interface 718 may includeone or more components that facilitate the functions described forrotary link 122 of device 100 for instance.

In yet another example, communication interface 718 may include wiredand/or wireless components that facilitate communication for aparticular sensor in vehicle 702. For instance, communication interface718 may include one or more antennas and a chipset accessible to orincorporated within a satellite navigation system (SNS) sensor (notshown), such as GPS 326 of vehicle 300. Thus, in this example, the SNSsensor may operate communication interface 718 to receive timinginformation from one or more satellites (e.g., external clocksource/system 730), and generate a reference clock signal based on thereceived timing information. Other examples are possible as well.

Controller 720 may comprise one or more general-purpose orspecial-purpose controllers that operate the various components ofvehicle 702 in accordance with the present disclosure. In oneimplementation, controller 720 may comprise one or more processors anddata storage storing instructions executable by the one or moreprocessors to cause vehicle 702 (and/or one or more components thereof)to perform the various functions of the present method. For example,controller 720 can be configured similarly to and/or integrated withincomputer system 310 of vehicle 300. Alternatively or additionally, insome implementations, controller 720 may include analog and/or digitalcircuitry wired to perform the various functions described herein.

In some instances, controller 720 can be implemented as multiplecontrollers that each perform particular functions. For instance,controller 720 may comprise a LIDAR controller (e.g., microcontroller,etc.) that operates actuator(s) 712 to adjust the pointing direction ofLIDAR device 710 and/or one or more rotation characteristics (e.g.,phase, frequency, direction, etc.) thereof. Further, for instance,controller 720 may comprise a vehicle controller that operates othercomponents of the vehicle 702 (e.g., communication interface 718, etc.)and facilitates communication between the LIDAR controller and othercomponents of the vehicle 702 (e.g., SNS sensor, communication interface718, etc.). Other examples are possible as well.

Thus, in some implementations, controller 720 may comprise aspecial-purpose controller (e.g., PID controller) that modulates powerprovided to actuator(s) 712 to adjust the pointing direction of LIDARdevice 710, the one or more rotation characteristics thereof, etc. Tothat end, in one implementation, controller 720 may determine a targetpointing direction of LIDAR device 710 based on timing informationreceived via communication interface 718, determine a current pointingdirection of LIDAR device 710 based on data from indicator(s) 714 and/orsensor(s) 716, and modulate the power provided to actuator(s) 712 toadjust the pointing direction of LIDAR device 710 based on a differencebetween the target pointing direction and the current pointingdirection. Other examples are possible as well and are described ingreater detail within exemplary embodiments herein.

External clock source(s)/system(s) 730 may comprise one or more systemsthat indicate a common clock signal (and/or other timing information)and transmit the common clock signal toward an environment that includesvehicles 702, 704, and 706. For example, as shown, system(s) 730 maybroadcast wireless signals 740 toward a region of the environment wheremultiple vehicles (e.g., vehicles 702, 704, 706, etc.) are located. Inturn, each vehicle may use the broadcast common clock signal (or othertiming information) as a basis to determine the pointing directions ofLIDARs therein (e.g., LIDAR device 710) relative to the environment ofthe respective vehicles. By doing so, for instance, each vehicle-mountedLIDAR may have a similar pointing direction relative to the environment,in line with the discussion of FIG. 6. As a result, for instance, theLIDAR-equipped vehicles 702, 704, 706 can mitigate or reduce LIDARinterference between one another by relying on the common clock signalfrom system(s) 730 to adjust the pointing directions of the LIDARstherein.

To that end, as shown, clock source(s) 730 can optionally include asatellite navigation system (SNS) 732, a data network system 734, acellular network system 736, and/or one or more remote servers 738.

SNS 732 may comprise one or more satellite-based navigation systems,such as the Global Positioning System (GPS) system, global navigationsystem (GLONASS), the European global navigation satellite system(Galileo), or any other global navigation satellite system. To that end,each of vehicles 702, 704, 706 may include a suitable sensor (notshown), such as GPS 326 for instance, that is configured to receivewireless signals 740 from SNS 732 and generate a common reference clocksignal based on signals 740. In one example, the reference clock signalmay be a pulse per second (e.g., PPS) signal that is synchronized withan atomic clock or other clock in SNS 732. In another example, thereference clock signal may be a coordinated universal time (UTC) signal.Other examples are possible as well.

Data network system 734 may comprise one or more network serversaccessible to vehicles 702 (e.g., via interface 718), 704, 706. Forexample, system 734 may comprise network servers connected to oneanother via a local area network or a private or public network (e.g.,the Internet, etc.) to provide an interface for transmitting datacommunication packets between vehicles 702, 704, 706 and/or othernetwork entities. To that end, in one implementation, system 734 maybroadcast encrypted signals 740 towards vehicles 702, 704, 706, withtiming information that can be used to synchronize the timing of therespective vehicles (and/or components thereon). In one implementation,signals 740 may indicate a network time protocol (NTP) reference clocksignal (or any other network time signal) based on data from the one ormore network servers accessible to vehicle 702 (via interface 718) aswell as other vehicles 704, 706. Thus, vehicles 702, 704, 706 can usethe timing information from system 734 to generate a common NTPreference clock signal (or other network clock signal) for timing therotation and/or otherwise adjusting the pointing directions of theLIDARs therein (e.g., LIDAR 710) relative to an environment of vehicles702, 704, 706.

Cellular network system 736 may comprise one or more base stations thatbroadcast wireless signals 740 to define a cellular coverage area ofsystem 736. Thus, for example, if vehicles 702, 704, 706, are locatedwithin the cellular coverage area defined by signals 740, then vehicles702, 704, 706 can receive a common reference clock signal from system736, and use the reference clock signal to adjust the pointingdirections of LIDARs mounted thereon, in line with the discussion above.

Remote server(s) 738 may include one or more servers accessible tovehicles 702 (e.g., via interface 718), 704, 706 similarly to thenetwork servers of system 734. In some implementations, server(s) 738may include servers of a vehicle control system that providesinformation to vehicles 702, 704, 706 about nearby vehicles, and/orother common information. Thus, in one implementation, server(s) 738 maycommunicate an indication of a selected clock source from sources 732,734, and/or 736 that vehicles 702, 704, 706 should use to establish acommon reference clock signal. In another implementation, server(s) 738may communicate a reference clock signal to the vehicles 702, 704, 706.In yet another implementation, server(s) 738 may provide an indication,to vehicle 702 via interface 718, that vehicles 704 and 706 areproximally located within an environment of vehicle 702. In turn,vehicle 702 may establish a communication link (directly or via remoteserver(s) 738) with vehicles 704 and 706, and then synchronize clocksignals between the three vehicles 702, 704, 706 to achieve a commonreference clock signal for adjusting the pointing directions of theLIDARS (e.g., LIDAR 710, etc.) mounted to the respective vehicles. Otherexamples are possible as well.

It is noted that the various functional blocks illustrated in FIG. 7 canbe re-arranged or physically implemented in different combinations thanthose shown. Thus, in some examples, the one or more of the componentsof vehicle 702 can be physically implemented within a single or severaldevices.

In a first example, although not shown, LIDAR device 710 canalternatively include one or more of actuator(s) 712, indicator(s) 714,communication interface 718, and/or controller 720. In this example,actuator(s) 712, indicator(s) 714, interface 718, and/or controller 720can be implemented within a stationary portion (e.g., stationaryplatform 120) and/or a rotating portion (e.g., rotating platform 116) ofLIDAR device 710. Thus, in this example, controller 720 can receiveinformation about an orientation of vehicle 702 from sensors 716 viacommunication interface 718, and then adjust the pointing direction ofLIDAR device 710 accordingly.

In a second example, although not shown, communication interface 718 canbe at least partially implemented within a satellite navigation sensor(not shown), such as GPS 326 for instance. Thus, in this example, thesatellite navigation sensor can operate interface 718 to receive signals740 from SNS 732 and provide a reference clock signal to controller 720for adjusting the pointing direction of LIDAR device 710.

In a third example, remote server(s) 738 can be physically implementedas a separate computing system that is not a clock source 730, butrather a control system that indicates to vehicles 702, 704, 706 whichof clock sources 732, 734, 736 to use as a source for the referenceclock signal.

In a fourth example, some or all of the functions described for thecontroller 720 can be implemented by an external system (e.g., remoteserver(s) 738). For instance, server(s) 738 can receive the variousinformation collected using indicator(s) 714 and/or sensor(s) 716 ofvehicle 702 and similar information from vehicles 704 and 706. In thisinstance, server(s) 738 can then determine a target pointing direction(relative to the environment of vehicles 702, 704, 706), and transmit anindication thereof (e.g., signals 740) for use by vehicles 702, 704,706.

In a fifth example, some or all of the functions described for externalclock source(s) 730 can be alternatively or additionally performed usinga clock inside vehicles 702, 704, 706. For instance, vehicle 702 (and/orvehicles 704, 706) can include a high-precision clock mounted in vehicle702. In this instance, controller 720 can use the internal clock forsynchronizing the direction of LIDAR device 710 relative to theenvironment of 700. Thus, for instance, controller 720 can use theinternal clock to adjust the pointing direction of LIDAR device 710 inscenarios where vehicle 702 is not connected (e.g., unable to connect,etc.) to external clock source(s) 730. Similarly, for instance, vehicles704 and 706 can also use internal clocks therein to determine similarpointing directions for their respective LIDARs as the pointingdirection of LIDAR device 710 of vehicle 702. With this arrangement, forinstance, vehicles 702, 704, 706 can continue to synchronize pointingdirections of their respective LIDARs without necessarily connecting toa common external clock source (or temporarily while a connection to thecommon external clock source is not available, etc.).

Further, it is noted that system 700 may include additional or fewercomponents than those shown, such as any of the components of devices100, 200, and/or vehicles 300, 400. For example, although FIG. 7 showsthree vehicles 702, 704, 706, system 700 may alternatively include feweror additional vehicles.

Thus, in some implementations, system 700 may comprise a plurality ofvehicles (e.g., 702, 704, and/or 706) including a first vehicle and asecond vehicle. The first vehicle may include a first sensor (e.g.,LIDAR, RADAR, SONAR, active camera, etc.) that scans a firstfield-of-view (FOV) defined by a first pointing direction of the firstsensor. The second vehicle may include a second sensor that scans asecond FOV defined by a second pointing direction of the second sensor.The system may also include a computing device (e.g., controller 720,system(s) 730), etc.) that causes the first vehicle (and/or the secondvehicle) to adjust the first pointing direction (and/or the secondpointing direction) such that the first and second pointing directionscorrespond to a same geographic direction (or are both within athreshold to a given geographic direction) in an environment of thefirst vehicle and the second vehicle. In various examples, the computingdevice of the system may be included in the first vehicle, the secondvehicle, and/or an external system (e.g., remote server, etc.). Tofacilitate this, in some examples, the computing device of the systemmay use a common clock source (which may be external similar to any ofclock source(s) 730) and/or respective internal clock sources of thefirst and second vehicles, in line with the discussion above.

FIG. 8 is a flowchart of a method 800, according to example embodiments.Method 800 presents an embodiment of a method that could be used withany of devices 100, 200, 410, 710, vehicles 300, 400, 510, 520, 530,610, 620, 630, 702, 704, 706 and/or system 700 for example. Method 800may include one or more operations, functions, or actions as illustratedby one or more of blocks 802-806. Although the blocks are illustrated ina sequential order, these blocks may in some instances be performed inparallel, and/or in a different order than those described herein. Also,the various blocks may be combined into fewer blocks, divided intoadditional blocks, and/or removed based upon the desired implementation.

In addition, for method 800 and other processes and methods disclosedherein, the flowchart shows functionality and operation of one possibleimplementation of present embodiments. In this regard, each block mayrepresent a module, a segment, a portion of a manufacturing or operationprocess, or a portion of program code, which includes one or moreinstructions executable by a processor for implementing specific logicalfunctions or steps in the process. The program code may be stored on anytype of computer readable medium, for example, such as a storage deviceincluding a disk or hard drive. The computer readable medium may includea non-transitory computer readable medium, for example, such ascomputer-readable media that stores data for short periods of time likeregister memory, processor cache and Random Access Memory (RAM). Thecomputer readable medium may also include non-transitory media, such assecondary or persistent long term storage, like read only memory (ROM),optical or magnetic disks, compact-disc read only memory (CD-ROM), forexample. The computer readable media may also be any other volatile ornon-volatile storage systems. The computer readable medium may beconsidered a computer readable storage medium, for example, or atangible storage device.

In addition, for method 800 and other processes and methods disclosedherein, each block in FIG. 8 may represent circuitry that is wired toperform the specific logical functions in the process.

Thus, in various examples, the functions of method 800 can beimplemented using controller 104, computer system 310, control system306, controller 720 and/or system(s) 730. Further, in some examples, thevarious functions of method 800 can be implemented by a combination ofone or more of these components. For example, the various functions ofmethod 800 can be distributed between controller 104 and computer system310, among other possibilities.

At block 802, method 800 involves scanning a field-of-view (FOV) definedby a pointing direction of a LIDAR device or other active sensor.Referring back to FIG. 4D by way of example, the scanned FOV maycorrespond to a region of an environment within contour 442 when theLIDAR device is at a first pointing direction and to the region withincontour 444 when the LIDAR device is at a second pointing direction,etc.

In some implementations, method 800 may involve rotating a sensor thatemits signals and detects reflections of the emitted signals based on apointing direction of the sensor. Rotating the sensor, for example, maychange the pointing direction of the sensor such that the sensor scans aregion of an environment from which the emitted signals are reflected.Thus, in some implementations, the LIDAR device can be configured torotate about an axis. In one implementation, the LIDAR device can beconfigured to rotate for complete rotations to scan a combined 360° FOVaround the LIDAR. In another implementation, the LIDAR device can beconfigured to rotate within a range of pointing directions (e.g., sweepback and forth between two pointing directions). In the example of FIG.4D for instance, the LIDAR device can be configured to scan FOVs betweencontours 444 and 448, etc.

In some examples, method 800 may involve using a different type ofsensor (e.g., RADAR unit 332, camera 334, SONAR sensor, etc.) that emitsand/or detects a different type of signal (e.g., radio waves, soundwaves, etc.) instead of or in addition to the LIDAR device. For example,camera 334 may be configured as an active camera that emits a signal ata source wavelength (e.g., infrared signal, etc.) to illuminate a scene,and detects reflections of the emitted signal to scan the scene. Otherexamples are possible.

At block 804, method 800 involves receiving timing information from anexternal system. In some examples, the received timing information maycorrespond to signals broadcast by an external clock source (e.g., 730)toward an environment of the LIDAR device.

In a first example, the external clock source/system may relate to asatellite navigation system (e.g., system 732). Thus, in this example, asystem of method 800 may include a satellite navigation sensor (e.g.,GPS 328) that receives wireless signals (e.g., 740) indicating thetiming information, and provides a reference clock signal based on thedata received by the satellite navigation sensor.

In a second example, the external clock source/system may relate to oneor more networks accessible to the LIDAR device (e.g., via communicationinterface 718), and a system of method 800 may thus determine a networktime protocol (NTP) reference clock signal (or other network clocksignal) based on data from the one or more network servers.

In a third example, the external clock source/system may relate totiming information provided by a cellular communication network (e.g.,system 736) accessible to the LIDAR device (e.g., via communicationinterface 718, and thus a system of method 800 may determine a referenceclock signal (e.g., system time, UTC time, etc.) based on data from thecellular communication network (e.g., system time from a base station,etc.).

In a fourth example, the external system may be a remote server (e.g.,autonomous vehicle server) that is in communication with a system (e.g.,vehicle, etc.) of method 800, in line with the discussion for server(s)738 for instance.

In a fifth example, the external system may include a computing system(e.g., system 310, etc.) of another vehicle that does not include theLIDAR device. For instance, where the LIDAR device is mounted to a givenvehicle, the given vehicle may establish one or more communicationlink(s) with one or more other vehicles in the environment of the givenvehicle. The given vehicle may then select or establish a common clocksignal for use by the given vehicle and the one or more other vehicles.

In some implementations, method 800 involves receiving the timinginformation at block 804 from a clock source of a system that performsmethod 800 in addition to or instead of receiving the timing informationfrom the external system.

In a first example, a first vehicle may include an internal clock (e.g.,high precision clock, atomic clock, or other clock) that provides thetiming information at block 804 instead of the external system, and asecond vehicle may include another internal clock that provides similartiming information. Thus, in this example, the first and second vehiclesmay use the respective timing information determined based on theirrespective internal clock sources to synchronize the pointing directionsof their LIDARs (or other active sensors). Through this process, forinstance, method 800 may allow vehicles to (at least to some extent)synchronize pointing directions of their respective LIDARs withoutnecessarily connecting to an external system to retrieve a commonexternal clock signal.

In a second example, a vehicle may intermittently (e.g., duringinitialization of the vehicle, initialization of an autonomous mode ofthe vehicle, initialization of a LIDAR of the vehicle, or in response toany other event) or periodically update or calibrate its internal clockusing data (e.g., reference clock signal, etc.) received from theexternal system. The vehicle may then use the calibrated internal clockto adjust the pointing direction of its LIDAR (or other active sensor),at least for a period of time until the internal clock is re-calibratedusing updated timing information from the external clock source.Similarly, another vehicle can also include an internal clock that iscalibrated or updated using data the same external system. Through thisprocess, for instance, the vehicles performing method 800 maysynchronize the respective pointing directions of their LIDARs (or otheractive sensors) even during periods of time when a connection to theexternal system is unavailable or the connection to the external systemis unreliable (e.g., low signal quality, etc.).

At block 806, method 800 involves adjusting the pointing direction ofthe LIDAR device (or other active sensor) based on at least the receivedtiming information. As noted above, in some implementations, the LIDARdevice may be configured to rotate (e.g., via actuator(s) 712) about anaxis. Accordingly, in some implementations, the adjustment at block 806may involve adjusting one or more characteristics of the rotation of theLIDAR device about the axis.

Referring back to FIG. 6 by way of example, a system of method 800 mayadjust the pointing direction of the LIDAR device (and pointingdirections of other proximally located LIDAR devices) toward a similardirection relative to environment 600. As another example, the system ofmethod 800 may adjust the pointing directions of the LIDAR device andthe other LIDAR devices to different directions that do notinterfere/overlap with one another. For example, as a variation of thescenario in FIG. 6, the LIDARs of vehicles 610 and 630 can be adjustedto have opposite pointing directions such that contours 612 and 632 donot overlap. Other examples are possible as well.

Additionally or alternatively, in some implementations, an examplesystem may be configured to adjust the pointing direction of a sensor(e.g., LIDAR device, etc.) by providing a modulated power signal to thesensor. In a first example, the sensor may include an array oftransmitters (e.g., RADAR antennas, SONAR transducers, etc.), and thesystem may provide phase-shifted control signals to the individualtransmitters in the array such that an effective pointing direction ofthe combined signal from the array is adjusted (e.g., via constructiveand/or destructive interference between the individual transmitters),such as in a phased array configuration. In a second example, the sensor(e.g., LIDAR device, etc.) may include one or more light sources coupledto reflective surfaces (e.g., phased optics array) or other opticalelement arrangement (e.g., optical phased array) to similarly adjust thepointing direction of the sensor even if the sensor is not rotating.Other examples are possible.

Accordingly, in some implementations, method 800 may involve modulatingpower provided to the LIDAR device (or other active sensor) to cause theadjustment of the pointing direction of the LIDAR device.

In some implementations, method 800 may also involve determining atarget rate of change to the pointing direction of the LIDAR device (orother type of sensor). For example, in implementations where the LIDARdevice does not rotate (e.g., spin) repeatedly for complete rotationsabout an axis but rather scans across one or more predefined ranges ofpointing directions, the system of method 800 may determine a targetrate of change to the pointing direction within the predefined one ormore ranges.

As noted above however, in some implementations, the LIDAR device may beconfigured to rotate (e.g., via actuator(s) 712) about an axis. To thatend, in some implementations, method 800 may also involve determining atarget frequency of rotation of the LIDAR device about the axis. In oneexample, server(s) 738 may instruct vehicles 702, 704, 706 to use anominal rotation frequency rate (e.g., 15 Hz, 10 Hz) etc.) for theirrespective LIDARs. In another example, each of vehicles 702, 704, 706may include data storage that stores an indication of the targetfrequency of rotation.

In some implementations, method 800 may also involve determining a yawrate of change to a yaw direction of a vehicle that mounts the LIDARdevice. For example, vehicle 702 may obtain a measurement of the yawdirection (or yaw rate) using sensor(s) 716. Further, in some examples,the yaw direction or yaw rate can be determined based on a combinationof vehicle orientation sensors. For example, the vehicle may beperforming a turning maneuver (which may cause the pitch and/or rollorientation of the vehicle to temporarily change) or moving along asloped surface (e.g., a banked road or ramp that is tilted such that thevehicle may have a pitch and/or roll offset compared to a scenario wherethe vehicle is on a surface that is not tilted). In this example, themeasurements by a “yaw sensor” aligned with axis 414 of vehicle 400 maybe biased due to the pitch/roll orientation of the vehicle during theturning maneuver or while driving on the sloped surface. Accordingly,the yaw direction (or yaw rate) of the vehicle can be adjusted based ona combination of outputs from a yaw sensor (e.g., gyroscope aligned withaxis 414), a pitch sensor (e.g., gyroscope aligned with axis 416),and/or a roll sensor (e.g., gyroscope aligned with axis 418), etc.

Additionally, in some implementations, method 800 may also involvedetermining an adjusted target rate of change to the pointing direction(or an adjusted target frequency of rotation) of the LIDAR device basedon the measured yaw direction (and/or yaw rate) of the vehicle on whichthe LIDAR device is mounted.

In one example, determining the adjusted target rate of change mayinvolve determining an adjustment for a direction of rotation of theLIDAR device about the axis. Referring back to FIG. 6 for instance,determining the adjusted target rate of change (or adjusted targetrotation frequency) for vehicles 610, 620, 630 may involve aligning thedirection of rotation of the respective LIDARs mounted thereon relativeto environment 600 (e.g., either clockwise or counterclockwise, etc.).

In another example, determining the adjusted target rate of change (orthe adjusted target frequency of rotation) may relate to adjusting for ayaw rate of change to the yaw direction of the vehicle on which theLIDAR device is mounted. Referring back to FIG. 6 for instance, ifvehicle 630 is performing a right turn maneuver and the LIDAR devicethereon has a nominal target frequency of rotation (e.g., 15 Hz) in theclockwise direction of vehicle 630, then a system of method 800 mayreduce the adjusted target frequency of rotation while vehicle 630 isperforming the turning maneuver. On the other hand, if the nominaltarget frequency of rotation is in the counterclockwise direction ofvehicle 630 (or vehicle 630 is performing a left turn maneuver), thenthe system of method 800 may increase the adjusted target frequency ofrotation while vehicle 630 is performing the turning maneuver. Thus, theadjustment in this example can be represented by equation [1] below.

adjusted_target_frequency=nominal_target_frequency−vehicle_yaw_rate  [1]

Thus, in some implementations, method 800 may also involve determining adifference between the adjusted target change to the pointing direction(or adjusted target frequency of rotation) of the LIDAR device and ameasured change to the pointing direction (or measured frequency ofrotation), as shown in equation [2] below.

frequency_error=adjusted_target_frequency−measured_frequency  [2]

The measured_frequency, for instance, may correspond to a measuredfrequency of rotation of the LIDAR device relative to the vehicle onwhich the LIDAR device is mounted (e.g., output of indicator(s) 714).Thus, for instance, frequency_error can map the rate of change to thepointing direction of the LIDAR device relative to the vehicle to a rateof change of the pointing direction of the LIDAR device relative to theenvironment. Through this process, for instance, the LIDAR device canscan a region of the environment during a turning maneuver at the samescanning resolution that it would otherwise have if the vehicle wastravelling in a straight path instead.

In some implementations, method 800 may also involve determining atarget pointing direction of the LIDAR device based on at least thetiming information received at block 806. For example, a system ofmethod 800 may perform the computation shown in equation [3] below.

target_direction=(360*reference_time*target_frequency−vehicle_orientation)mod(360)  [3]

where target_direction is the target pointing direction, reference_timeis the time or clock signal indicated by the received timing informationfrom the external system, vehicle_orientation is a yaw direction of thevehicle in the environment (e.g., determined using sensor(s) 716), andthe function mod corresponds to the modulus function. In some examples,the “target_frequency” in equation [3] can be replaced by theadjusted_target_frequency described in equation [1].

In some implementations, method 800 may also involve determining adifference between the target pointing direction and a measured pointingdirection of the LIDAR device (e.g., measured using indicator(s) 714).For example, a system of method 800 may perform the computation shown inequation [4] below.

phase_error=AngleWrapper(target_direction−measured_direction)  [4]

where phase_error is a difference between the phase of the rotation ofthe LIDAR device about the axis and a common phase of other LIDARdevices (based on the common timing information received at block 806),Angle Wrapper is a function that transforms the difference between thetwo phases to a value between −180° and +180°, and themeasured_direction is the measured position of the LIDAR device about arotation axis thereof (e.g., axis 432).

In some implementations, method 800 may also involve modulating powerprovided to an actuator that rotates the LIDAR device based on: (i) adifference between the target pointing direction and the measuredpointing direction, and/or (ii) a difference between the target rate ofchange (or target frequency of rotation) and the measured rate of change(or measured frequency of rotation). For example, a system of method 800may perform the computations in equations [5] and [6] below.

combined_error=frequency_error+phase_gain_coefficient*phase_error  [5]

motor_drive_signal=MotorCon(combined_error)  [6]

where combined_error is a weighted sum of the frequency_error ofequation [2] and the phase_error of equation[4] (weighted by thephase_gain_coefficient). To that end, the phase_gain_coefficient may beany value that can be used to smooth variations in the phase_error dueto, for example, measurement errors by the indicator(s) 714 among otherpossibilities. Further, motor_drive_signal may be a modulated signalprovided by a controller (e.g., controller 720) to power an actuator(e.g., actuator 712) according to a configuration of a motor controller(e.g. PID controller, etc.) indicated by the function MotorCon. Thus,for example, MotorCon may be any motor controller configuration (e.g.,PID controller interface, etc.) that computes a voltage or current(e.g., modulated power signal, etc.) to apply to actuator 712 based onthe combined_error signal.

In some implementations, method 800 may also involve modulating thepower provided to the actuator based on the frequency_error (e.g.,difference between target frequency of rotation and measured frequencyof rotation of LIDAR) when the frequency_error is above a threshold(e.g., adjust frequency difference first), and then modulate the powerprovided to the actuator based on the frequency_error and thephase_error (e.g., difference between target pointing direction of LIDARand measured pointing direction) when the frequency_error is below thethreshold. For example, by doing so, the system of method 800 mayimprove the transient time to achieve the target frequency of rotation(which may be less susceptible to measurement errors in the measuredfrequency of rotation), and then add the phase_error (together with thephase_gain_coefficient) into the combined_error signal to achieve atarget phase (which may need more time due to noise in the measuredposition of the LIDAR device, etc.) as well.

In practice, for instance, measured_frequency may be less noisy thanmeasured_position. Thus, improved performance may be achieved byobtaining and correcting for the difference between target_frequency (oradjusted_target_frequency) and measured_frequency first (at least withinthe threshold), then correcting for the difference betweentarget_direction and measured_direction.

It is noted that implementations described above in connection withequations [1]-[6] are exemplary only. Other implementations are possibleas well without departing from the scope of the present disclosure.

V. CONCLUSION

The particular arrangements shown in the Figures should not be viewed aslimiting. It should be understood that other implementations may includemore or less of each element shown in a given Figure. Further, some ofthe illustrated elements may be combined or omitted. Yet further, anexemplary implementation may include elements that are not illustratedin the Figures. Additionally, while various aspects and implementationshave been disclosed herein, other aspects and implementations will beapparent to those skilled in the art. The various aspects andimplementations disclosed herein are for purposes of illustration andare not intended to be limiting, with the true scope and spirit beingindicated by the following claims. Other implementations may beutilized, and other changes may be made, without departing from thespirit or scope of the subject matter presented herein. It will bereadily understood that the aspects of the present disclosure, asgenerally described herein, and illustrated in the figures, can bearranged, substituted, combined, separated, and designed in a widevariety of different configurations.

What is claimed:
 1. A system comprising: a light detection and ranging(LIDAR) device that scans a field-of-view defined by a pointingdirection of the LIDAR device, wherein the LIDAR device is mounted to avehicle; a communication interface that receives timing information froman external system; and a controller that adjusts the pointing directionof the LIDAR device based on at least the received timing information,wherein the timing information from the external system is also used toadjust one or more pointing directions of one or more other LIDARdevices mounted to one or more other vehicles such that the pointingdirection of the LIDAR device and the one or more pointing directions ofthe one or more other LIDAR devices are aligned.
 2. The system of claim1, further comprising: one or more sensors that provide an indication ofan orientation of the vehicle relative to an environment of the vehicle,wherein the controller adjusts the pointing direction of the LIDARdevice further based on data from the one or more sensors.
 3. The systemof claim 2, wherein the one or more sensors comprise a yaw sensor thatindicates a measurement of a yaw direction of the vehicle in theenvironment.
 4. The system of claim 2, wherein the one or more sensorscomprise a yaw rate sensor that indicates a measurement of a yaw rate ofchange to a yaw direction of the vehicle in the environment.
 5. Thesystem of claim 1, further comprising: one or more devices that providean indication of an orientation of the LIDAR device relative to thevehicle, wherein the controller adjusts the pointing direction of theLIDAR device further based on data from the one or more devices.
 6. Thesystem of claim 5, wherein the one or more devices include a LIDARdirection indicator that indicates a measurement of the pointingdirection of the LIDAR device relative to the vehicle.
 7. The system ofclaim 5, wherein the one or more devices include a LIDAR rotationindicator that indicates a measurement of a rate of change to thepointing direction of the LIDAR device relative to the vehicle.
 8. Thesystem of claim 1, further comprising a satellite navigation systemsensor associated with the communication interface, wherein the timinginformation relates to a reference clock signal indicated by data fromthe satellite navigation system sensor.
 9. The system of claim 1,wherein the timing information relates to a reference clock signalindicated by data from one or more network servers accessible to thesystem via the communication interface.
 10. The system of claim 1,wherein the timing information relates to a reference clock signalindicated by data from a cellular communication network accessible tothe system via the communication interface.
 11. A vehicle comprising: alight detection and ranging (LIDAR) device that scans a field-of-viewdefined by a pointing direction of the LIDAR device; a communicationinterface that receives timing information from an external system; anda controller that adjusts one or more characteristics of the rotation ofthe LIDAR device based on at least the received timing information,wherein the timing information from the external system is also used toadjust one or more characteristics of rotation of one or more otherLIDAR devices mounted to one or more other vehicles such that the LIDARdevice and the one or more other LIDAR devices have a common frequencyand phase of rotation.
 12. The vehicle of claim 11, wherein the one ormore characteristics include a direction of the rotation of the LIDARdevice about the axis.
 13. The vehicle of claim 11, wherein the one ormore characteristics include a phase of the rotation of the LIDAR deviceabout the axis.
 14. The vehicle of claim 13, further comprising: asensor that provides an indication of a yaw direction of the vehicle inan environment of the vehicle, wherein the controller adjusts the phaseof the rotation further based on the yaw direction indicated by the yawsensor.
 15. The vehicle of claim 13, further comprising: a device thatindicates a measured position of the LIDAR device about the axis,wherein the controller adjusts the phase of the rotation further basedon the measured position.
 16. The vehicle of claim 11, wherein the oneor more characteristics include a frequency of the rotation of the LIDARdevice about the axis.
 17. The vehicle of claim 16, further comprising:a sensor that provides an indication of a yaw rate of change to a yawdirection of the vehicle in the environment, wherein the controlleradjusts the frequency of the rotation of the LIDAR device about the axisfurther based on the yaw rate.
 18. The vehicle of claim 16, furthercomprising: a device that indicates a measurement of the frequency ofthe rotation of the LIDAR device about the axis, wherein the controlleradjusts the frequency of the rotation of the LIDAR device further basedon the measurement of the frequency.
 19. A method comprising: scanning,via a light detection and ranging (LIDAR) device, a field-of-viewdefined by a pointing direction of the LIDAR device, wherein the LIDARdevice is mounted to a vehicle; receiving, via a communicationinterface, timing information from an external system; and adjusting thepointing direction of the LIDAR device based on at least the receivedtiming information, wherein the timing information from the externalsystem is also used to adjust one or more pointing directions of one ormore other LIDAR devices mounted to one or more other vehicles such thatthe pointing direction of the LIDAR device and the one or more pointingdirections of the one or more other LIDAR devices are aligned.
 20. Themethod of claim 19, wherein adjusting the pointing direction of theLIDAR device comprises adjusting the pointing direction of the LIDARdevice via an actuator, and further comprising: determining a targetpointing direction of the LIDAR device based on the received timinginformation; determining a current pointing direction of the LIDARdevice based on measurements indicated by one or more sensors; andmodulating power provided to the actuator based on a difference betweenthe target pointing direction and the current pointing direction.